// 构造函数 
// function Goods (name, price, count) {
//     this.name = name
//     this.price = price
//     this.count = count
// }

// const goods1 = new Goods('小米', 1999, 20)

// const goods2 = new Goods('华为', 2999, 10)

// const goods3 = new Goods('苹果', 4999, 5)

// function Goods (name) {
//     this.name = name
// }

// Goods.price = 1000 // 静态属性

// Goods.count = function () {} // 静态方法

// console.log(Goods)

// const str = 'hello'
// // 为什么 简单类型 也有属性和方法呢
// console.log(str.length);
// // 简单 数据类型 包装成了 复杂 数据类型
// const str1 = new String('hello')



// const obj = {name: 'why', age: 18}
// const obj1 = {}
// // console.log(Object.keys(obj));
// // console.log(Object.values(obj));
// // 这是 浅拷贝
// Object.assign(obj1, obj)

// obj.name = 'kobe'

// console.log(obj, obj1);

const arr = [
    {name: 'why', age: 18},
    {name: 'kobe', age: 40},
    {name: 'james', age: 30}
]

const total = arr.reduce((pre, item) => {
   return pre + item.age 

}, 0)

// 为什么 初始值要设置为0


console.log(total);



